package com.rainyun.rcmc.bukkit;

import com.rainyun.rc.ioc.RainIOC;
import com.rainyun.rc.util.RainLoader;
import org.bukkit.plugin.java.JavaPlugin;

import java.io.IOException;
import java.util.List;

public class BukkitPlugin extends JavaPlugin{

	/**当前插件载入类*/
	protected List<Class<?>> classes;

	/**通过RainIOC.load方法载入当前项目的所有类*/
	@Override
	public void onEnable()////////////////
	{
		RainIOC.set(this);
		//获取本插件所有相关类
		try {
			classes = RainLoader.loadClassesByObj(this,getClassLoader());
		} catch (IOException e) {
			e.printStackTrace();
		}
		RainIOC.load(classes);//载入所有IOC对象
	}

	/**卸载本插件相关对象*/
	@Override
	public void onDisable() {
		RainIOC.unload(classes);//卸载相关单例
	}
}
